/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package editor;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see editor.EditorFactory
 * @model kind="package"
 * @generated
 */
public interface EditorPackage extends EPackage {
	/**
   * The package name.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   */
	String eNAME = "editor";

	/**
   * The package namespace URI.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   */
	String eNS_URI = "editor";

	/**
   * The package namespace name.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   */
	String eNS_PREFIX = "editor";

	/**
   * The singleton instance of the package.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   */
	EditorPackage eINSTANCE = editor.impl.EditorPackageImpl.init();

	/**
   * The meta object id for the '{@link editor.impl.EditorImpl <em>Editor</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.EditorImpl
   * @see editor.impl.EditorPackageImpl#getEditor()
   * @generated
   */
	int EDITOR = 0;

	/**
   * The feature id for the '<em><b>Nodes</b></em>' containment reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int EDITOR__NODES = 0;

	/**
   * The feature id for the '<em><b>Relationships</b></em>' containment reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int EDITOR__RELATIONSHIPS = 1;

	/**
   * The feature id for the '<em><b>Root</b></em>' containment reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int EDITOR__ROOT = 2;

	/**
   * The feature id for the '<em><b>Root Relationship</b></em>' containment reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int EDITOR__ROOT_RELATIONSHIP = 3;

	/**
   * The number of structural features of the '<em>Editor</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int EDITOR_FEATURE_COUNT = 4;

	/**
   * The meta object id for the '{@link editor.impl.RootImpl <em>Root</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.RootImpl
   * @see editor.impl.EditorPackageImpl#getRoot()
   * @generated
   */
	int ROOT = 1;

	/**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ROOT__NAME = 0;

	/**
   * The feature id for the '<em><b>Outgoing Root</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ROOT__OUTGOING_ROOT = 1;

	/**
   * The number of structural features of the '<em>Root</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ROOT_FEATURE_COUNT = 2;

	/**
   * The meta object id for the '{@link editor.impl.RootRelationshipImpl <em>Root Relationship</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.RootRelationshipImpl
   * @see editor.impl.EditorPackageImpl#getRootRelationship()
   * @generated
   */
	int ROOT_RELATIONSHIP = 2;

	/**
   * The feature id for the '<em><b>Source Root</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ROOT_RELATIONSHIP__SOURCE_ROOT = 0;

	/**
   * The feature id for the '<em><b>Target Root</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ROOT_RELATIONSHIP__TARGET_ROOT = 1;

	/**
   * The number of structural features of the '<em>Root Relationship</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ROOT_RELATIONSHIP_FEATURE_COUNT = 2;

	/**
   * The meta object id for the '{@link editor.impl.NodeImpl <em>Node</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.NodeImpl
   * @see editor.impl.EditorPackageImpl#getNode()
   * @generated
   */
	int NODE = 3;

	/**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int NODE__NAME = 0;

	/**
   * The feature id for the '<em><b>Incoming Node</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int NODE__INCOMING_NODE = 1;

	/**
   * The feature id for the '<em><b>Outgoing Node</b></em>' reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int NODE__OUTGOING_NODE = 2;

	/**
   * The number of structural features of the '<em>Node</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int NODE_FEATURE_COUNT = 3;

	/**
   * The meta object id for the '{@link editor.impl.ElementImpl <em>Element</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.ElementImpl
   * @see editor.impl.EditorPackageImpl#getElement()
   * @generated
   */
	int ELEMENT = 4;

	/**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ELEMENT__NAME = NODE__NAME;

	/**
   * The feature id for the '<em><b>Incoming Node</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ELEMENT__INCOMING_NODE = NODE__INCOMING_NODE;

	/**
   * The feature id for the '<em><b>Outgoing Node</b></em>' reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ELEMENT__OUTGOING_NODE = NODE__OUTGOING_NODE;

	/**
   * The feature id for the '<em><b>Element Type</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ELEMENT__ELEMENT_TYPE = NODE_FEATURE_COUNT + 0;

	/**
   * The feature id for the '<em><b>Incoming Complex Element</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ELEMENT__INCOMING_COMPLEX_ELEMENT = NODE_FEATURE_COUNT + 1;

	/**
   * The feature id for the '<em><b>Attributes</b></em>' containment reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ELEMENT__ATTRIBUTES = NODE_FEATURE_COUNT + 2;

	/**
   * The number of structural features of the '<em>Element</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ELEMENT_FEATURE_COUNT = NODE_FEATURE_COUNT + 3;

	/**
   * The meta object id for the '{@link editor.impl.AttributeImpl <em>Attribute</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.AttributeImpl
   * @see editor.impl.EditorPackageImpl#getAttribute()
   * @generated
   */
	int ATTRIBUTE = 5;

	/**
   * The feature id for the '<em><b>Attribute Name</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ATTRIBUTE__ATTRIBUTE_NAME = 0;

	/**
   * The feature id for the '<em><b>Attribute Type</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ATTRIBUTE__ATTRIBUTE_TYPE = 1;

	/**
   * The feature id for the '<em><b>Use</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ATTRIBUTE__USE = 2;

	/**
   * The number of structural features of the '<em>Attribute</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int ATTRIBUTE_FEATURE_COUNT = 3;

	/**
   * The meta object id for the '{@link editor.impl.ConnectorImpl <em>Connector</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.ConnectorImpl
   * @see editor.impl.EditorPackageImpl#getConnector()
   * @generated
   */
	int CONNECTOR = 6;

	/**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CONNECTOR__NAME = NODE__NAME;

	/**
   * The feature id for the '<em><b>Incoming Node</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CONNECTOR__INCOMING_NODE = NODE__INCOMING_NODE;

	/**
   * The feature id for the '<em><b>Outgoing Node</b></em>' reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CONNECTOR__OUTGOING_NODE = NODE__OUTGOING_NODE;

	/**
   * The number of structural features of the '<em>Connector</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CONNECTOR_FEATURE_COUNT = NODE_FEATURE_COUNT + 0;

	/**
   * The meta object id for the '{@link editor.impl.SequenceConnectorImpl <em>Sequence Connector</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.SequenceConnectorImpl
   * @see editor.impl.EditorPackageImpl#getSequenceConnector()
   * @generated
   */
	int SEQUENCE_CONNECTOR = 7;

	/**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int SEQUENCE_CONNECTOR__NAME = CONNECTOR__NAME;

	/**
   * The feature id for the '<em><b>Incoming Node</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int SEQUENCE_CONNECTOR__INCOMING_NODE = CONNECTOR__INCOMING_NODE;

	/**
   * The feature id for the '<em><b>Outgoing Node</b></em>' reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int SEQUENCE_CONNECTOR__OUTGOING_NODE = CONNECTOR__OUTGOING_NODE;

	/**
   * The number of structural features of the '<em>Sequence Connector</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int SEQUENCE_CONNECTOR_FEATURE_COUNT = CONNECTOR_FEATURE_COUNT + 0;

	/**
   * The meta object id for the '{@link editor.impl.ChoiceConnectorImpl <em>Choice Connector</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.ChoiceConnectorImpl
   * @see editor.impl.EditorPackageImpl#getChoiceConnector()
   * @generated
   */
	int CHOICE_CONNECTOR = 8;

	/**
   * The feature id for the '<em><b>Name</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CHOICE_CONNECTOR__NAME = CONNECTOR__NAME;

	/**
   * The feature id for the '<em><b>Incoming Node</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CHOICE_CONNECTOR__INCOMING_NODE = CONNECTOR__INCOMING_NODE;

	/**
   * The feature id for the '<em><b>Outgoing Node</b></em>' reference list.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CHOICE_CONNECTOR__OUTGOING_NODE = CONNECTOR__OUTGOING_NODE;

	/**
   * The number of structural features of the '<em>Choice Connector</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int CHOICE_CONNECTOR_FEATURE_COUNT = CONNECTOR_FEATURE_COUNT + 0;

	/**
   * The meta object id for the '{@link editor.impl.RelationshipImpl <em>Relationship</em>}' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.impl.RelationshipImpl
   * @see editor.impl.EditorPackageImpl#getRelationship()
   * @generated
   */
	int RELATIONSHIP = 9;

	/**
   * The feature id for the '<em><b>Occurrence</b></em>' attribute.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int RELATIONSHIP__OCCURRENCE = 0;

	/**
   * The feature id for the '<em><b>Source Relationship</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int RELATIONSHIP__SOURCE_RELATIONSHIP = 1;

	/**
   * The feature id for the '<em><b>Target Relationship</b></em>' reference.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int RELATIONSHIP__TARGET_RELATIONSHIP = 2;

	/**
   * The number of structural features of the '<em>Relationship</em>' class.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @generated
   * @ordered
   */
	int RELATIONSHIP_FEATURE_COUNT = 3;

	/**
   * The meta object id for the '{@link editor.Occurrence <em>Occurrence</em>}' enum.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.Occurrence
   * @see editor.impl.EditorPackageImpl#getOccurrence()
   * @generated
   */
	int OCCURRENCE = 10;

	/**
   * The meta object id for the '{@link editor.Use <em>Use</em>}' enum.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.Use
   * @see editor.impl.EditorPackageImpl#getUse()
   * @generated
   */
	int USE = 11;

	/**
   * The meta object id for the '{@link editor.DefaultTypes <em>Default Types</em>}' enum.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @see editor.DefaultTypes
   * @see editor.impl.EditorPackageImpl#getDefaultTypes()
   * @generated
   */
	int DEFAULT_TYPES = 12;


	/**
   * Returns the meta object for class '{@link editor.Editor <em>Editor</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Editor</em>'.
   * @see editor.Editor
   * @generated
   */
	EClass getEditor();

	/**
   * Returns the meta object for the containment reference list '{@link editor.Editor#getNodes <em>Nodes</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Nodes</em>'.
   * @see editor.Editor#getNodes()
   * @see #getEditor()
   * @generated
   */
	EReference getEditor_Nodes();

	/**
   * Returns the meta object for the containment reference list '{@link editor.Editor#getRelationships <em>Relationships</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Relationships</em>'.
   * @see editor.Editor#getRelationships()
   * @see #getEditor()
   * @generated
   */
	EReference getEditor_Relationships();

	/**
   * Returns the meta object for the containment reference '{@link editor.Editor#getRoot <em>Root</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Root</em>'.
   * @see editor.Editor#getRoot()
   * @see #getEditor()
   * @generated
   */
	EReference getEditor_Root();

	/**
   * Returns the meta object for the containment reference '{@link editor.Editor#getRootRelationship <em>Root Relationship</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the containment reference '<em>Root Relationship</em>'.
   * @see editor.Editor#getRootRelationship()
   * @see #getEditor()
   * @generated
   */
	EReference getEditor_RootRelationship();

	/**
   * Returns the meta object for class '{@link editor.Root <em>Root</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Root</em>'.
   * @see editor.Root
   * @generated
   */
	EClass getRoot();

	/**
   * Returns the meta object for the attribute '{@link editor.Root#getName <em>Name</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Name</em>'.
   * @see editor.Root#getName()
   * @see #getRoot()
   * @generated
   */
	EAttribute getRoot_Name();

	/**
   * Returns the meta object for the reference '{@link editor.Root#getOutgoingRoot <em>Outgoing Root</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Outgoing Root</em>'.
   * @see editor.Root#getOutgoingRoot()
   * @see #getRoot()
   * @generated
   */
	EReference getRoot_OutgoingRoot();

	/**
   * Returns the meta object for class '{@link editor.RootRelationship <em>Root Relationship</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Root Relationship</em>'.
   * @see editor.RootRelationship
   * @generated
   */
	EClass getRootRelationship();

	/**
   * Returns the meta object for the reference '{@link editor.RootRelationship#getSourceRoot <em>Source Root</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Source Root</em>'.
   * @see editor.RootRelationship#getSourceRoot()
   * @see #getRootRelationship()
   * @generated
   */
	EReference getRootRelationship_SourceRoot();

	/**
   * Returns the meta object for the reference '{@link editor.RootRelationship#getTargetRoot <em>Target Root</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Target Root</em>'.
   * @see editor.RootRelationship#getTargetRoot()
   * @see #getRootRelationship()
   * @generated
   */
	EReference getRootRelationship_TargetRoot();

	/**
   * Returns the meta object for class '{@link editor.Node <em>Node</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Node</em>'.
   * @see editor.Node
   * @generated
   */
	EClass getNode();

	/**
   * Returns the meta object for the attribute '{@link editor.Node#getName <em>Name</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Name</em>'.
   * @see editor.Node#getName()
   * @see #getNode()
   * @generated
   */
	EAttribute getNode_Name();

	/**
   * Returns the meta object for the reference '{@link editor.Node#getIncomingNode <em>Incoming Node</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Incoming Node</em>'.
   * @see editor.Node#getIncomingNode()
   * @see #getNode()
   * @generated
   */
	EReference getNode_IncomingNode();

	/**
   * Returns the meta object for the reference list '{@link editor.Node#getOutgoingNode <em>Outgoing Node</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference list '<em>Outgoing Node</em>'.
   * @see editor.Node#getOutgoingNode()
   * @see #getNode()
   * @generated
   */
	EReference getNode_OutgoingNode();

	/**
   * Returns the meta object for class '{@link editor.Element <em>Element</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Element</em>'.
   * @see editor.Element
   * @generated
   */
	EClass getElement();

	/**
   * Returns the meta object for the attribute '{@link editor.Element#getElementType <em>Element Type</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Element Type</em>'.
   * @see editor.Element#getElementType()
   * @see #getElement()
   * @generated
   */
	EAttribute getElement_ElementType();

	/**
   * Returns the meta object for the reference '{@link editor.Element#getIncomingComplexElement <em>Incoming Complex Element</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Incoming Complex Element</em>'.
   * @see editor.Element#getIncomingComplexElement()
   * @see #getElement()
   * @generated
   */
	EReference getElement_IncomingComplexElement();

	/**
   * Returns the meta object for the containment reference list '{@link editor.Element#getAttributes <em>Attributes</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the containment reference list '<em>Attributes</em>'.
   * @see editor.Element#getAttributes()
   * @see #getElement()
   * @generated
   */
	EReference getElement_Attributes();

	/**
   * Returns the meta object for class '{@link editor.Attribute <em>Attribute</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Attribute</em>'.
   * @see editor.Attribute
   * @generated
   */
	EClass getAttribute();

	/**
   * Returns the meta object for the attribute '{@link editor.Attribute#getAttributeName <em>Attribute Name</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Attribute Name</em>'.
   * @see editor.Attribute#getAttributeName()
   * @see #getAttribute()
   * @generated
   */
	EAttribute getAttribute_AttributeName();

	/**
   * Returns the meta object for the attribute '{@link editor.Attribute#getAttributeType <em>Attribute Type</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Attribute Type</em>'.
   * @see editor.Attribute#getAttributeType()
   * @see #getAttribute()
   * @generated
   */
	EAttribute getAttribute_AttributeType();

	/**
   * Returns the meta object for the attribute '{@link editor.Attribute#getUse <em>Use</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Use</em>'.
   * @see editor.Attribute#getUse()
   * @see #getAttribute()
   * @generated
   */
	EAttribute getAttribute_Use();

	/**
   * Returns the meta object for class '{@link editor.Connector <em>Connector</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Connector</em>'.
   * @see editor.Connector
   * @generated
   */
	EClass getConnector();

	/**
   * Returns the meta object for class '{@link editor.SequenceConnector <em>Sequence Connector</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Sequence Connector</em>'.
   * @see editor.SequenceConnector
   * @generated
   */
	EClass getSequenceConnector();

	/**
   * Returns the meta object for class '{@link editor.ChoiceConnector <em>Choice Connector</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Choice Connector</em>'.
   * @see editor.ChoiceConnector
   * @generated
   */
	EClass getChoiceConnector();

	/**
   * Returns the meta object for class '{@link editor.Relationship <em>Relationship</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for class '<em>Relationship</em>'.
   * @see editor.Relationship
   * @generated
   */
	EClass getRelationship();

	/**
   * Returns the meta object for the attribute '{@link editor.Relationship#getOccurrence <em>Occurrence</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the attribute '<em>Occurrence</em>'.
   * @see editor.Relationship#getOccurrence()
   * @see #getRelationship()
   * @generated
   */
	EAttribute getRelationship_Occurrence();

	/**
   * Returns the meta object for the reference '{@link editor.Relationship#getSourceRelationship <em>Source Relationship</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Source Relationship</em>'.
   * @see editor.Relationship#getSourceRelationship()
   * @see #getRelationship()
   * @generated
   */
	EReference getRelationship_SourceRelationship();

	/**
   * Returns the meta object for the reference '{@link editor.Relationship#getTargetRelationship <em>Target Relationship</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for the reference '<em>Target Relationship</em>'.
   * @see editor.Relationship#getTargetRelationship()
   * @see #getRelationship()
   * @generated
   */
	EReference getRelationship_TargetRelationship();

	/**
   * Returns the meta object for enum '{@link editor.Occurrence <em>Occurrence</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Occurrence</em>'.
   * @see editor.Occurrence
   * @generated
   */
	EEnum getOccurrence();

	/**
   * Returns the meta object for enum '{@link editor.Use <em>Use</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Use</em>'.
   * @see editor.Use
   * @generated
   */
	EEnum getUse();

	/**
   * Returns the meta object for enum '{@link editor.DefaultTypes <em>Default Types</em>}'.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the meta object for enum '<em>Default Types</em>'.
   * @see editor.DefaultTypes
   * @generated
   */
	EEnum getDefaultTypes();

	/**
   * Returns the factory that creates the instances of the model.
   * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
   * @return the factory that creates the instances of the model.
   * @generated
   */
	EditorFactory getEditorFactory();

	/**
   * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
   * @generated
   */
	interface Literals {
		/**
     * The meta object literal for the '{@link editor.impl.EditorImpl <em>Editor</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.EditorImpl
     * @see editor.impl.EditorPackageImpl#getEditor()
     * @generated
     */
		EClass EDITOR = eINSTANCE.getEditor();

		/**
     * The meta object literal for the '<em><b>Nodes</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference EDITOR__NODES = eINSTANCE.getEditor_Nodes();

		/**
     * The meta object literal for the '<em><b>Relationships</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference EDITOR__RELATIONSHIPS = eINSTANCE.getEditor_Relationships();

		/**
     * The meta object literal for the '<em><b>Root</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference EDITOR__ROOT = eINSTANCE.getEditor_Root();

		/**
     * The meta object literal for the '<em><b>Root Relationship</b></em>' containment reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference EDITOR__ROOT_RELATIONSHIP = eINSTANCE.getEditor_RootRelationship();

		/**
     * The meta object literal for the '{@link editor.impl.RootImpl <em>Root</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.RootImpl
     * @see editor.impl.EditorPackageImpl#getRoot()
     * @generated
     */
		EClass ROOT = eINSTANCE.getRoot();

		/**
     * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EAttribute ROOT__NAME = eINSTANCE.getRoot_Name();

		/**
     * The meta object literal for the '<em><b>Outgoing Root</b></em>' reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference ROOT__OUTGOING_ROOT = eINSTANCE.getRoot_OutgoingRoot();

		/**
     * The meta object literal for the '{@link editor.impl.RootRelationshipImpl <em>Root Relationship</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.RootRelationshipImpl
     * @see editor.impl.EditorPackageImpl#getRootRelationship()
     * @generated
     */
		EClass ROOT_RELATIONSHIP = eINSTANCE.getRootRelationship();

		/**
     * The meta object literal for the '<em><b>Source Root</b></em>' reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference ROOT_RELATIONSHIP__SOURCE_ROOT = eINSTANCE.getRootRelationship_SourceRoot();

		/**
     * The meta object literal for the '<em><b>Target Root</b></em>' reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference ROOT_RELATIONSHIP__TARGET_ROOT = eINSTANCE.getRootRelationship_TargetRoot();

		/**
     * The meta object literal for the '{@link editor.impl.NodeImpl <em>Node</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.NodeImpl
     * @see editor.impl.EditorPackageImpl#getNode()
     * @generated
     */
		EClass NODE = eINSTANCE.getNode();

		/**
     * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EAttribute NODE__NAME = eINSTANCE.getNode_Name();

		/**
     * The meta object literal for the '<em><b>Incoming Node</b></em>' reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference NODE__INCOMING_NODE = eINSTANCE.getNode_IncomingNode();

		/**
     * The meta object literal for the '<em><b>Outgoing Node</b></em>' reference list feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference NODE__OUTGOING_NODE = eINSTANCE.getNode_OutgoingNode();

		/**
     * The meta object literal for the '{@link editor.impl.ElementImpl <em>Element</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.ElementImpl
     * @see editor.impl.EditorPackageImpl#getElement()
     * @generated
     */
		EClass ELEMENT = eINSTANCE.getElement();

		/**
     * The meta object literal for the '<em><b>Element Type</b></em>' attribute feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EAttribute ELEMENT__ELEMENT_TYPE = eINSTANCE.getElement_ElementType();

		/**
     * The meta object literal for the '<em><b>Incoming Complex Element</b></em>' reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference ELEMENT__INCOMING_COMPLEX_ELEMENT = eINSTANCE.getElement_IncomingComplexElement();

		/**
     * The meta object literal for the '<em><b>Attributes</b></em>' containment reference list feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference ELEMENT__ATTRIBUTES = eINSTANCE.getElement_Attributes();

		/**
     * The meta object literal for the '{@link editor.impl.AttributeImpl <em>Attribute</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.AttributeImpl
     * @see editor.impl.EditorPackageImpl#getAttribute()
     * @generated
     */
		EClass ATTRIBUTE = eINSTANCE.getAttribute();

		/**
     * The meta object literal for the '<em><b>Attribute Name</b></em>' attribute feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EAttribute ATTRIBUTE__ATTRIBUTE_NAME = eINSTANCE.getAttribute_AttributeName();

		/**
     * The meta object literal for the '<em><b>Attribute Type</b></em>' attribute feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EAttribute ATTRIBUTE__ATTRIBUTE_TYPE = eINSTANCE.getAttribute_AttributeType();

		/**
     * The meta object literal for the '<em><b>Use</b></em>' attribute feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EAttribute ATTRIBUTE__USE = eINSTANCE.getAttribute_Use();

		/**
     * The meta object literal for the '{@link editor.impl.ConnectorImpl <em>Connector</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.ConnectorImpl
     * @see editor.impl.EditorPackageImpl#getConnector()
     * @generated
     */
		EClass CONNECTOR = eINSTANCE.getConnector();

		/**
     * The meta object literal for the '{@link editor.impl.SequenceConnectorImpl <em>Sequence Connector</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.SequenceConnectorImpl
     * @see editor.impl.EditorPackageImpl#getSequenceConnector()
     * @generated
     */
		EClass SEQUENCE_CONNECTOR = eINSTANCE.getSequenceConnector();

		/**
     * The meta object literal for the '{@link editor.impl.ChoiceConnectorImpl <em>Choice Connector</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.ChoiceConnectorImpl
     * @see editor.impl.EditorPackageImpl#getChoiceConnector()
     * @generated
     */
		EClass CHOICE_CONNECTOR = eINSTANCE.getChoiceConnector();

		/**
     * The meta object literal for the '{@link editor.impl.RelationshipImpl <em>Relationship</em>}' class.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.impl.RelationshipImpl
     * @see editor.impl.EditorPackageImpl#getRelationship()
     * @generated
     */
		EClass RELATIONSHIP = eINSTANCE.getRelationship();

		/**
     * The meta object literal for the '<em><b>Occurrence</b></em>' attribute feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EAttribute RELATIONSHIP__OCCURRENCE = eINSTANCE.getRelationship_Occurrence();

		/**
     * The meta object literal for the '<em><b>Source Relationship</b></em>' reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference RELATIONSHIP__SOURCE_RELATIONSHIP = eINSTANCE.getRelationship_SourceRelationship();

		/**
     * The meta object literal for the '<em><b>Target Relationship</b></em>' reference feature.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @generated
     */
		EReference RELATIONSHIP__TARGET_RELATIONSHIP = eINSTANCE.getRelationship_TargetRelationship();

		/**
     * The meta object literal for the '{@link editor.Occurrence <em>Occurrence</em>}' enum.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.Occurrence
     * @see editor.impl.EditorPackageImpl#getOccurrence()
     * @generated
     */
		EEnum OCCURRENCE = eINSTANCE.getOccurrence();

		/**
     * The meta object literal for the '{@link editor.Use <em>Use</em>}' enum.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.Use
     * @see editor.impl.EditorPackageImpl#getUse()
     * @generated
     */
		EEnum USE = eINSTANCE.getUse();

		/**
     * The meta object literal for the '{@link editor.DefaultTypes <em>Default Types</em>}' enum.
     * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
     * @see editor.DefaultTypes
     * @see editor.impl.EditorPackageImpl#getDefaultTypes()
     * @generated
     */
		EEnum DEFAULT_TYPES = eINSTANCE.getDefaultTypes();

	}

} //EditorPackage
